package com.sikaryofficial.backend.domain.vo;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.sikaryofficial.backend.domain.vo.mystatics.CollectionStatics;
import com.sikaryofficial.backend.domain.vo.mystatics.CommentsStatics;
import com.sikaryofficial.backend.domain.vo.mystatics.LikesStatics;
import com.sikaryofficial.backend.domain.vo.mystatics.PrizeRedeemStatics;
import com.sikaryofficial.backend.domain.vo.mystatics.ReportStatics;
import com.sikaryofficial.backend.domain.vo.mystatics.ReservationStatics;
import com.sikaryofficial.backend.domain.vo.mystatics.SharingStatics;
import com.sikaryofficial.backend.domain.vo.mystatics.WorkOrderStatics;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

/**
 * 我的统计对象 my_statistics_t
 *
 * @author qinjinyuan
 * @date 2023-11-06
 */
@Getter
@Setter
@ToString
@ApiModel(value = "我的统计出参", description = "我的统计出参")
@NoArgsConstructor
@AllArgsConstructor
public class MyStatisticsVO extends OtherStatisticsVO {
    /**
     * 评论数量
     */
    @JsonIgnore
    private long evaluateCount;

    /**
     * 评论回复数量
     */
    @JsonIgnore
    private long replyCount;

    /**
     * 我的评论统计
     */
    @ApiModelProperty(value = "我的评论统计")
    private CommentsStatics reviews;

    /**
     * 预约数量
     */
    @JsonIgnore
    private long reservedCount;
    /**
     * 预约过期数量
     */
    @JsonIgnore
    private long expireCount;
    /**
     * 中奖数量
     */
    @JsonIgnore
    private long awardsCount;
    /**
     * 我的预约统计
     */
    @ApiModelProperty(value = "我的预约统计")
    private ReservationStatics reservation;

    /**
     * 店铺收藏数量
     */
    @JsonIgnore
    private long productCollectionCount;

    /**
     * 店铺收藏数量
     */
    @JsonIgnore
    private long storeCollectionCount;

    /**
     * 活动收藏数量
     */
    @JsonIgnore
    private long activityCollectionCount;

    /**
     * 我的收藏统计
     */
    @ApiModelProperty(value = "我的收藏统计")
    private CollectionStatics collection;

    /**
     * 分享评论数量
     */
    @JsonIgnore
    private long storeSharedCount;

    /**
     * 分享评论数量
     */
    @JsonIgnore
    private long productSharedCount;

    /**
     * 我的分享统计
     */
    @ApiModelProperty(value = "我的分享统计")
    private SharingStatics sharing;

    /**
     * 产品点赞数量
     */
    @JsonIgnore
    private long likesProductNum;

    /**
     * 评价点赞数量
     */
    @JsonIgnore
    private long likesEvaluateNum;

    /**
     * 我的点赞统计
     */
    @ApiModelProperty(value = "我的点赞统计")
    private LikesStatics like;

    /**
     * 举报数量
     */
    @JsonIgnore
    private long reportCount;

    /**
     * 举报受理数量
     */
    @JsonIgnore
    private long reportAcceptedCount;

    /**
     * 我的举报统计
     */
    @ApiModelProperty(value = "我的举报统计")
    private ReportStatics report;

    /**
     * 工单数量
     */
    @JsonIgnore
    private long workOrderCount;

    /**
     * 我的工单统计
     */
    @ApiModelProperty(value = "我的工单统计")
    private WorkOrderStatics afterSale;

    /**
     * 礼品数量统计
     */
    @JsonIgnore
    private long prizeCount;

    /**
     * 我的礼品数量统计
     */
    @ApiModelProperty(value = "我的礼品数量统计")
    private PrizeRedeemStatics prize;
}
